﻿using System;
using System.ComponentModel.Composition;

namespace WebFabricator.org
{
    /// <summary>
    /// Adds the concept of a cooperative chain of resposibility pattern to the fabricator command pattern
    /// </summary>
    /// <typeparam name="T"></typeparam>
     [InheritedExport(typeof(IAdorner<>))]
    public interface IAdorner<T>:IWebFabricator<IWebFabric<T>>
    {
         void Initialize(T fabric);
        IAdorner<T> Next(Adorner<T> handler);
    }
}
